草庐IT

Dev Box 服务

全部标签

http - Golang的 "net/http"中客户端HTTP请求和服务端HTTP请求有什么区别

我看到有人使用“net/http”包的NewRequest()方法来测试API。为什么不使用“net/http/httptesting”中的NewRequest()方法?有什么不同?文档建议thefollowing://TogenerateaclientHTTPrequestinsteadofaserverrequest,see//theNewRequestfunctioninthenet/httppackage.例如,在处理cookie方面会有什么不同?两者看起来非常相似。 最佳答案 TL;DR:它们是相同的类型,在两个用例中的使

docker - 我尝试在 docker 中部署 gRPC (go) 服务器并在本地端口中公开端口,但端口绑定(bind)不起作用

我尝试在docker中部署gRPC服务器和mongodb。之后我尝试将docker端口绑定(bind)到我的本地端口。mongodb端口绑定(bind)工作正常。但是,gRPC服务器端口没有绑定(bind)我的本地端口ports:-"50051:50051"像这样我在docker-compose.yml中尝试过docker-compose.ymlservices:auth_server:container_name:auth_servicebuild:.command:gorunserver.govolumes:-.:/go/src/auth_serverworking_dir:/go

由golang服务器提供服务时html视频标签不播放m3u8文件

我已经从视频生成了m3u8文件(index.m3u8),我想在HTML上播放它。基本上,我有一个golang服务器,它将index.m3u8发送到html5中的视频标签,以便在http://127.0.0.1:8200/play时播放它。被称为。我的golang文件:packagemainimport("fmt""net/http""html/template")funcserveHandler(whttp.ResponseWriter,r*http.Request){tmpl:=template.Must(template.ParseFiles("index.html"))tmpl.

go - 如何在 go 中对 gRPC 服务进行单元测试

我在对gRPC服务进行单元测试时遇到困难。我看了TestingagRPCservice但它对我不起作用,不确定我做错了什么。Add方法的gRPC服务实现:typeserverstruct{}funcmain(){listener,err:=net.Listen("tcp",":4040")iferr!=nil{panic(err)}srv:=grpc.NewServer()service.RegisterMathOpServiceServer(srv,&server{})reflection.Register(srv)ife:=srv.Serve(listener);e!=nil{pa

java - 向 TCP 服务器指示 Java TCP 客户端已完成写入流

我正在编写一个连接到GolangTCP服务器的JavaTCP客户端。服务器使用以下代码从客户端读取消息:func(tcpHandlerTCPHandler)getClientMsgBytes(connection*net.TCPConn)([]byte,error){clientMsgBytes,err:=ioutil.ReadAll(connection)iferr!=nil{returnnil,err}returnclientMsgBytes,nil}我的客户端使用以下代码向服务器发送消息:try(Socketsocket=newSocket("localhost",9000)){

Golang http 服务器根据内容类型返回 html 或 json

我正在尝试使用gorillamux在Golang中编写简单的RESTful应用程序。我写了几个如下所示的处理程序:funcgetUser(whttp.ResponseWriter,r*http.Request){ifr.Header.Get("Content-type")=="application/json"{w.Header().Set("Content-Type","application/json")u,err:=_getUser(r)iferr!=nil{http.NotFound(w,r)return}json.NewEncoder(w).Encode(u)//askedf

javascript - 禁用按钮调用服务器然后重新启用按钮

我见过很多和我类似的问题,但是花了几个小时浏览,找不到适合我的情况的答案。我有一个基于Go的网络服务器。我有一个HTML模板页面,可以让我用当前浏览器时间更新'nix系统上的硬件时钟和系统时钟:更新按钮的类型为提交并调用Go代码,这会进行一些系统调用,这需要几秒钟,而且我不能让这个服务器代码在它仍在处理第一个请求时被调用两次。所以我想禁用更新按钮,然后在服务器响应后重新启用它。我有jQuery,所以我知道我可以有一个通过“onclick”调用的函数并进行这些调用:$("#updateButton").prop("disabled",true);$("#updateButton").pr

postgresql - GoLang 服务无法使用 docker compose 访问 Postgres

我有一个用Go编写的HTML服务。它使用Postgres,但是当使用dockercompose将它们组合在一起时,我得到“dialtcp0.0.0.0:5432:connect:connectionrefused”在仅使用docker并引用Postgres的运行图像构建启动服务时工作来自go的调用片段psqlInfo:=fmt.Sprintf("host=%sport=%suser=%spassword=%sdbname=%ssslmode=disable",host,port,user,password,dbname)db,err:=sql.Open("postgres",psqlI

go - 无法使用默认服务帐户和谷歌云库从谷歌 Kubernetes 引擎访问谷歌云存储

我编写了一个应用程序,它具有使用golang通过GoogleKubernetesEngine上传图像的功能。其他一切正常,但当我尝试将图像写入GoogleCloudStorage时,我一直遇到问题。这是我在golang中实际使用googlestorageapi的代码:funcputImage(imageURLstring,imagemultipart.File)bool{fmt.Println("Puttingintoimagelocation:"+imageURL)contextBackground:=context.Background()storageClient,err:=st

go - http put 服务器处理大文件

请考虑这个codepostedhere,它处理httpPUT请求。它工作正常,有小文件:$curl-vhttp://192.168.1.10:9193/-Tred.tx*Trying192.168.1.10...*Connectedto192.168.1.10(192.168.1.10)port9193(#0)>PUT/red.txHTTP/1.1>Host:192.168.1.10:9193>User-Agent:curl/7.47.0>Accept:*/*>Content-Length:19697247>Expect:100-continue>但是-向它发送一个大于1G大小的大文件